Django连接MongoDB数据库基本设置(附所有修改代码截图)

您所在的位置:网站首页 django 连接数据库sockettimeout配置 Django连接MongoDB数据库基本设置(附所有修改代码截图)

Django连接MongoDB数据库基本设置(附所有修改代码截图)

2023-07-19 06:14| 来源: 网络整理| 查看: 265

Django连接MongoDB数据库 Django使用MongoDB数据库的优点条件准备安装mongoengine 配置连接MongoDB数据库修改settings.py文件编辑models.py 文件

Django使用MongoDB数据库的优点

数据量大时,mongodb的检索效率比mysql更高

保存数据时,mongodb不会因为缺少某一项信息而报错,但是mysql会报错(除非手动设置这一项在数据库中可以为空)

条件准备 电脑上安装有 MongoDB 数据库安装python的一个第三方库 mongoengine 安装mongoengine pip install mongoengine

Django连接MongoDB,和连接myslq的不同之处有两点

settings.py 中的数据库配置models.py 中的类 配置连接MongoDB数据库 修改settings.py文件

django连接mongodb数据库,只需指定一个数据库的名字即可

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), }, # 默认的sqlite3 不用删除 'mongodb':{ # db_book 是MOngoDB数据库的名字 'NAME':'db_book' } }

在这里插入图片描述

db_book 是MongoDB的一个数据库名字,该数据库需要事先手动创建

再看一张连接mysql的settings.py 文件中关于数据库部分的图片

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'chaochao', 'USER': 'root', 'PASSWORD': 'chaochao666', 'HOST': '', 'PORT': '', } }

在这里插入图片描述

编辑models.py 文件 import mongoengine from book.settings import DATABASES from datetime import datetime # 使用connect()方法链接MongoDB # NAME 会自动映射为 settings.py 中的数据库名 mongoengine.connect(DATABASES['mongodb']['NAME']) # Create your models here. # 此处继承的是 mongoengine.Document class book(mongoengine.Document): isbn = mongoengine.StringField() # 编号 name = mongoengine.StringField() # 书名 author = mongoengine.StringField() # 作者 press = mongoengine.StringField() # 出版社 date = mongoengine.DateTimeField(default=datetime.now(), required=True) # 出版时间 kind = mongoengine.StringField() # 分类

在这里插入图片描述

再来看一下连接 mysql 时的 models.py 文件

from django.db import models # Create your models here. class Person(models.Model): # 姓名 str类型 name = models.CharField(max_length=20,verbose_name='姓名') # 年龄 int型 age=models.IntegerField(verbose_name='年龄') # 成绩 float类型 score = models.FloatField(verbose_name='成绩')

在这里插入图片描述

当我们在后台管理中添加一个数据后,打开MongoDB,可以看到数据已经添加成功

book 是 models.py 中设置的类名,默认使用类名作为MongoDB中的集合名

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3